package com.example.demo.java8.functionalinterface.day240426;

import lombok.extern.slf4j.Slf4j;

import java.util.function.Consumer;

/**
 *
 * Java 8 在 java.util.function 包下预定了大量的函数式接口供我们使用，常用如下：
 *
 * Consumer 接口
 *
 * void accept(T t)	消费一个指定泛型的数据
 * default Consumer andThen(Consumer<? super T> after)	消费数据的时候，首先做一个操作， 然后再做一个操作，实现组合
 *
 * @author luo
 * @since 2024/4/26 23:40
 */
@Slf4j
public class ConsumerTest02 {

    public static void main(String[] args) {
        Consumer<Integer> consumer = money ->log.info("本次消费"+money);
        consumer.accept(666);

        Consumer<String> consumer2 = str ->log.info(str.toUpperCase());

        Consumer<String> consumer3 = str ->log.info(str.toLowerCase());
        consumer2.andThen(consumer3).accept("abcefg");
    }

}
